Engineering Knowledge-Based Software for Large Embedded Systems
نویسنده
چکیده
data types support modularity and reusability.Because of the high reliability requirements of embedded systems andthe poor testing environments usually associated with them, it paysto have as much veri cation as possible performed in the developmentenvironment. An ADT-based language with strong type checking per-formed at compile-time helps considerably in improving reliability in acost-e ective manner.By providing support for programming-in-the-large in an integratedprogramming environment, major software product development is madepossible.There are two areas where we suggest some further research:It should be investigated how easily the facilities in the XE languagepermit the construction of domain oriented knowledge-level abstrac-tions. For instance how can a generic task [Chandrasekaran 1986] beimplemented in XE?More practical experiments are needed to establish how well XE mea-sures up in hard real-time tasks. Furthermore, a knowledge-based sys-tem developed wit XE should be monitored for a long period of practicaland the ease of maintainability of the system studied from the languagepoint of view.29 7 References1. Abott, R., J. Knowledge Abstraction. Commun. ACM 30, 8 (Aug. 1987),664-671.2. Arkko, J., Kuusela, J., Nuutila E., Tamminen, M., and Hirvisalo, V.The ExBed project some experiences. In Proceedings of the FinnishAI Symposium (Helsinki,Aug. 15-18), Helsinki, 1988.3. Arkko, J., Hirvisalo, V., Kuusela, J., Nuutila, E. and Tamminen, M.Some Experiences with Rules in Procedural Programming Languages.In Proceedings of International Computer Science Conference'88 ,Hong Kong, 1988.4. Arkko, J., Hirvisalo, V., Kuusela, J., Nuutila, E. and Tamminen, M.XE Reference Manual . Report HTKK-TKO-A26, Helsinki Universityof Technology, Dept. of Computer Science, 1989.5. Arkko, J., Hirvisalo, V., Kuusela, J., Nuutila, E. and Tamminen, M.Programming in XE . Report HTKK-TKO-C33, Helsinki Universityof Technology, Dept. of Computer Science, 1989.6. Arkko, J., Hirvisalo, V., Kuusela, J., Nuutila, E. and Tamminen, M.Notes on XE Run Time Characteristics and Code Generation . Re-port HTKK-TKO-C37, Helsinki University of Technology, Dept. ofComputer Science, 1989.7. Bratko, I. Prolog Programming for Arti cial Intelligence. Addison-Wesley, 1986.8. Bouteldja, M. Dxpert, An Expert System for Complex Alarm Inter-pretation in the DX 200 Digital Switching System. In Proceedingsof the International Expert Systems Conference , (London, June 2-4),Learned Information, Oxford, 1987.9. Bouteldja, M. Engineering Embedded Knowledge-Based Software for aDigital Switching System, In Proceedings of SETSS'89 , IEE, London,1989.10. Bouteldja, M., Arkko, J., Kuusela, J., Nuutila, E. and Tamminen, M.Building an Embedded Knowledge-Based Application using Abstrac-tions, In Proceedings of the 2nd Scandinavian Conference on Arti cialIntelligence ,Tampere, Finland, 1989.11. Bouteldja, M., and Lepisto P. On Some Problems in Applying Arti cialIntelligence in Large Industrial Systems. In Scandinavian Conferenceon Arti cial Intelligence , T. Danielsen, Ed., IOS, Amsterdam, 1988.30 12. Brownston, L., Farrell, R., Kant, L. and Martin N. ProgrammingExpert Systems in OPS5. Addison Wesley, 1985.13. CCITT, Functional Speci cation and Description Language SDL .CCITT red book, Vol. VI, Recommendations Z.100-Z.104, Geneve,1984.14. Chandrasekaran, B. Generic tasks in knowledge-based reasoning: high-level building blocks for expert system design. IEEE Expert 1, 3,1986, 23-30.15. Curtis, B., Krasner, H., and Iscoe N. A eld study of the softwaredesign process for large systems. Commun. ACM 31, 11 (Nov. 1988),1268-1287.16. Dacker, B., Elshiewy, N., Hedeland, P., Welin, C-W., and Williams, M.Experiments with programming languages and techniques for telecom-munications applications. In Proceedings of SETSS'85 , IEE, London,1985.17. Erman, L., D., Lark, Jxx ., S., and Hayes-Roth, F. ABE: An Environ-ment for Engineering Intelligent Systems IEEE Trans. Soft. Eng. 14,12 (Dec. 1988), 1758-1770.18. Fagan, L. Ventilator manager: a program to provide on line consulta-tive advice in the intensive care unit. PhD. thesis, Computer ScienceDepartment, Stanford University, 1980.19. Fickas, S., and Novick, D. Control in Rule-Based Systems: RelaxingRestrictive Assumptions. In Proceedings of the 5th International Con-ference on Expert Systems and Their Applications , Avignon, 1985.20. Fickas, S., Downing, K., Novick, D. and Robinson, B. The Speci cation,Design and Implementation of Large Knowledge-Based Systems. InNorthcon85, Conference Record , Portland, OR, USA, Oct. 1985.21. Forgy C.L. Rete: a fast algorithm for the many pattern/many objectpattern match problem. Arti cial Intelligence 19, 1, 1982, 17-37.22. Forgy C.L. The OPS83 Report . Report CMU-CS-84-133, Carnegie-Mellon University, Dept. of Computer Science, 1984.23. Ganapathi, M., and Mendal, G. Issues in Ada Compiler Technology.IEEE Computer 22, 2, (Feb. 1989), 52-62.24. Hayes-Roth, F. Rule-based systems. Commun. ACM 28, 9, (Sept.1985).25. Inder R. The state of the ART. AIRING , AIAI, University of Edin-burgh, (Feb. 1988).31 26. IntelliCorp, KEE Software Development System User's Manual. Ver-sion 3.0, IntelliCorp, 1985.27. Karonis, F., C., and King, R., E. Multi-Level Expert Systems for In-dustrial Control. In Proceedings of the International Expert SystemsConference , (London, June 2-4), Learned Information, Oxford, 1987.28. Kuusela, J., Arkko, J., Hirvisalo, V., Nuutila, E., and Tamminen, M.XE Programming Environment User's Guide. Report-HTKK-TKO-C35, Helsinki University of Technology, Dept. of Computer Science,1989.29. La ey, T., J., Cox, P., A., Schmidt, J., L., Kao, S., M., and Read, J.,Y. Real-Time Knowledge-Based Systems. AI magazine 9, 1, 1988,27-45.30. Liskov, B, and Guttag J. Abstraction and Speci cation in ProgramDevelopment . MIT press, Mass., 1986.31. Liskov, B., Snyder, A., Atkinson, R., and Scha ert, C. AbstractionMechanisms in CLU. Commun. ACM 20, 8 (Aug. 1977), 564-576.32. Liskov, B., and Zilles, S. Programming with abstract data types. SIG-PLAN Not. , (Apr. 1974), 50-59.33. Luqi, Berzins, V., and Yeh, R.T. A Prototyping Language for Real-Time Software. IEEE Trans. Software Eng. 14, 10 (Oct. 1988),1409-1423.34. McDermot, J., and Forgy, C. Production System Con ict ResolutionStrategies. In Pattern-directed Inference Systems , Academic Press,1978.35. McDermot, J., Newell, A., and Moore, J. The E ciency of CertainProduction System Implementations. In Pattern-directed InferenceSystems , Academic Press, 1978.36. Meyer, B. Object-oriented Software Construction . Prentice Hall In-ternational, London, 1988.37. Milliken, K.R., et al. YES/L1: A Language for Implementing RealTime Expert Systems . IBM Thomas J. Watson Research Center,Yorktown Heights, New York, 1985.38. Miranker, P. TREAT: A Better Match Algorithm for AI ProductionSystems. In Proceedings of AAAI ,Seattle, Washington,July 1987.39. Nuutila, E., Kuusela, J., Tamminen, M., Veilahti, J., Arkko, J. andBouteldja, M. XC a Language for Embedded Rule Based Systems.SIGPLAN Not. 22, 9 (Sep. 1987), 23-32.32 40. Odette, L., L., and Dress, W., B. Engineering intelligence into real-timeapplications. Expert Systems 4, 4, (Nov. 1987), 228-239.41. Rayment, P., J., and Thomas, S. Advanced Embedded Expert Sys-tem Techniques. In Proceedings of the International Expert SystemsConference , (London, June 2-4), Learned Information, Oxford, 1987.42. Riley, G., D. Timing Tests of Expert System Building Tools. ReportFM7-86-51 , L. B. Johnson Space Center, NASA, 1986.43. Robertson, J. Stimulus a Base Language for Real Time Expert Sys-tems. In Proceedings of the Conference on AI and Advanced ComputerTechnology , Wiesbaden, Sept. 1985.44. Sachs, P., A., Paterson, A., M., and Turner, M., H., M. Escort anexpert system for complex operations in real-time. Expert Systems 3,1, (1986), 22-29.45. Sakkinen, M. On the darker side of C++. In Proceedings of the Euro-pean Conference on Object-Oriented Programming , Oslo, 1988.46. Sauers, R., and Walsh, R. On the Requirements of Future Expert Sys-tems. In Proceedings of IJCAI , Karlsruhe, West Germany, Aug.1983.47. Shaw, M. Abstraction techniques in modern programming languages.IEEE Softw. , (Oct. 1984), 10-26.48. Stolfo, S., J., and Miranker, D., P. DADO: A Parallel Processor for Ex-pert Systems. In Proceedings of International Conference on ParallelProcessing. IEEE, Computer Society Press, 1984.49. Stroustrup, B. The C++ Programming Language . Addison-Wesley,1986.50. Tanenbaum, A., S., Van Staveren, H., Keizer, E., G., and Stevenson,J., W. A Practical Toolkit for Making Portable Compilers. Commun.ACM 26, 9, (Sep. 1983), 654-660.51. Theuretzbacher, N. Expert Systems Technology for Safety-Critical Real-Time Systems. Electrical Communication 60, 2, ITT, 1986.52. Vesonder, G., Stolfo, S., Zielinski, J., Miller, F., and Copp, D. ACE:An Expert System for Telephone Cable Maintenance. In Proceedingsof IJCAI , Karlsruhe, West-Germany, Aug. 1983.53. Walker, J.H., Moon, D.A., Weinreb, D.L., and McMahon, M. The Sym-bolics Genera Programming Environment. IEEE Software , (Nov.1987), 363-45.33 54. Wright, M., L., Green, M. W., Fiegl, G., and Cross, P., F. An expertsystem for real-time control. IEEE Software 3, 2, (March 1986),16-24.55. _Arzen, K-E., Expert systems for process control. In Proceedings ofthe 1st International Conference on Applications of AI in EngineeringPractice Southampton, UK, April 1986.
منابع مشابه
A Repository for Component-based Embedded Software Development
The rapid growth in the demand for embedded systems and the increased complexity of embedded software pose an urgent need for advanced embedded software development techniques. Software technology is shifting toward semi-automated code generation and integration of systems from components. Component-based development (CBD) techniques can significantly reduce the time and cost for developing sof...
متن کاملComponent-Based Embedded Software Engineering: Development Framework, Quality Assurance and a Generic Assessment Environment
Embedded software is used to control the functions of mechanical and physical devices by dedicated digital signal processor and computers. Nowadays, heterogeneous and collaborative embedded software systems are widely adopted to engage the physical world. To make such software extremely reliable, very efficient and highly flexible, component-based embedded software development can be employed f...
متن کاملA partition-based algorithm for clustering large-scale software systems
Clustering techniques are used to extract the structure of software for understanding, maintaining, and refactoring. In the literature, most of the proposed approaches for software clustering are divided into hierarchical algorithms and search-based techniques. In the former, clustering is a process of merging (splitting) similar (non-similar) clusters. These techniques suffered from the drawba...
متن کاملVariability and Evolution in Model-based Engineering of Embedded Systems
Abstract: In this paper, we report on techniques for variability and evolution in Model-based Engineering of Embedded Systems. The techniques are based on an integration of domain-specific languages for embedded systems with model-driven techniques for Software Product Lines. In particular, we discuss (1) product configuration with interactive tools, (2) product derivation with model transforma...
متن کاملComputer Science Agile Techniques for Developing and Evaluating Large-scale Component-based Distributed Real-time and Embedded Systems
Agile techniques are a promising approach to facilitate the development of large-scale component-based distributed real-time and embedded (DRE) systems. Conventional agile techniques help ensure functional concerns of such systems continuously throughout the software lifecycle. Ensuring quality-of-service (QoS) concerns of large-scale componentbased DRE systems using conventional agile techniqu...
متن کاملOn the Model-based Documentation of Knowledge Sources in the Engineering of Embedded Systems
In the development of embedded systems the context is of vital importance, as embedded systems interact with the context through sensing and actuation. Information about the system’s context is contained within different knowledge sources and must be elicited and negotiated during embedded systems development. Examples for such knowledge sources may be: laws, standards, internal process specifi...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 1989